The Internet has been growing dramatically into a telecommunication network over the world since 1990's. People collect plenty of information by accessing the Internet anywhere, at anytime. Meanwhile, other types of networks, such as cell phone network and pager network, are proliferating rapidly. More and more people will expect a ubiquitous network access which enables them to communicate with anyone, anywhere.
However, ubiquitous network connectivity for devices does by no means imply continuous delivery of message to anyone anywhere automatically. In fact, more and more people currently possess more than one message device, such as cell phone, home telephone, office telephones, PC and PDA. A person may be in different places from time to time during the day, switching from one message terminal to another. As a result, the person would miss an important call to his home telephone when he is in the office, and may even not get a call to his office when he is away from his desk in the office.
Message Delivery System (MDS) is a communication infrastructure destined for creation of flexible solutions of message delivery using, a wide range of known transport media. Public Switched Telephone Network (PSTN), Global System for Mobile communication (GSM), e-mail systems, and instant message systems, are all different types of MDS. To solve the above problem, MDS usually provides the necessary message redirection mechanisms so that message is delivered to the called party independent of whatever devices he uses and wherever he is. For example, call-forwarding service is provided in PSTN and GSM.
There are still some problems in current message redirection mechanisms. Let's take telephone call-forwarding as the example. Call-forwarding is a service that allows to divert incoming calls to another phone number. It offers driver options and the number towards which the calls are diverted can be a cell phone or a telephone number. The service can be used when the user is away from his phone and wants to have calls to him forwarded to a specific place. Obviously, the call-forwarding service provides many advantages, e.g. in reducing radiation from cell phone, saving the power of cell phone, saving money and bringing the user convenience, etc.
There are many methods to enable a call-forwarding service. If choosing a way of doing it manually, you have to press a series of keys on the cell phone or the telephone to set the call-forwarding option as well as call forwarding phone number. The operation is somewhat awkward for the users, especially for those users who keep roaming frequently from place to place. In addition, you have to know the forwarding phone number in advance or you will be prevented from using the call-forwarding service.
Now, it is known that some systems, e.g. SIP, provide necessary protocol mechanisms so that systems can automatically provide call-forwarding services. Such a system redirects or uses location service offered by location server to obtain information about a caller's possible location. Location server may use, for example, on-line personal calendars to determine the place where the user would possibly be reached at a certain moment actively as well as the terminal systems available at that place. However, such obtained information might not be true and accurate. For example, people may not define their own calendar at all, or, maybe at some event that could not be anticipated. Besides, the location information could not fully express the information nearby the user's environment. Examples of such environment information include nearby devices' capabilities, available services, and so on. The information is also dynamic along with user's mobility from a location to another location frequently.